home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1995 November / EnigmA AMIGA RUN 02 (1995)(G.R. Edizioni)(IT)[!][issue 1995-11][Skylink CD].iso / earcd / util / misc / ispell31.lha / ispell-3.1.18src / languages / README < prev    next >
Text File  |  1994-11-02  |  7KB  |  140 lines

  1.            HOW TO INSTALL LANGUAGES BESIDES ENGLISH
  2.                    
  3. Ispell can support most European languages as well as English.  It
  4. even supports British English.  But it doesn't come with dictionaries
  5. for those languages (except British), because as an English speaker
  6. I'm not qualified to maintain them.  This file contains instructions
  7. on how to install dictionaries for other languages.
  8.  
  9. The instructions below look long and complicated.  Actually, the
  10. process is very simple, but I wanted to be sure to explain everything
  11. in detail and give lots of examples.  Once you understand the process,
  12. you should be able to do it in less time than it takes to read this file.
  13.  
  14. For each language you wish to install, perform the following steps:
  15.  
  16. 1.  If necessary, create a new subdirectory of "languages" to hold
  17.     your dictionary.  Traditionally, the subdirectories are named
  18.     after the native word for the language, with accented characters
  19.     downgraded to simple ASCII.  For example, the French dictionary
  20.     would go in "languages/francais", with the c-cedilla lost in
  21.     translation.
  22.  
  23.     If you are making a new directory, copy the Makefile from
  24.     "languages/nederlands", which is a good prototype, and change
  25.     "nederlands" to the name of your language.  No other changes
  26.     should be necessary unless you have a much more complex setup.
  27.     (See the "deutsch" and "american" subdirectories for examples of
  28.     how to do fancier things).
  29.  
  30. 2.  Find a word list for the language.  Usually, the best way to find
  31.     a list is either to look in languages/Where, or to ask around in
  32.     your local country.  Check to see if the word list comes with an
  33.     affix file (*.aff).  If it does, you're often better off using
  34.     that affix file, even if one came with ispell.  The files should
  35.     go in the directory you created in step 1.
  36.  
  37.     Many word lists available on the Internet are already "munched"
  38.     for use with ispell.  A "munched" list can be identified by
  39.     looking for slash ("/") characters at the ends of words, such as
  40.     those found in the English dictionary "languages/english/english.0".
  41.     If your list isn't munched, you will probably want to munch it
  42.     before you complete installation.  See step 5 below for
  43.     instructions.
  44.  
  45.     For example, if you are installing Dutch (Nederlands) support, you
  46.     need to have a file named "nederlands.aff" and a word list.  The
  47.     Makefile assumes that the word list is named "nederlands.sml", but
  48.     you can change this.  Put both files in "languages/nederlands".
  49.  
  50. 3.  Depending on the language, you may have to add certain definitions
  51.     to your local.h file.  Remove the definition of NO8BIT, so that
  52.     you will be able to support ISO Latin-1 characters.  If your affix
  53.     file uses both upper- and lower-case flag characters, add a line
  54.     reading "#define MASKBITS 64" (or 128 or 256).
  55.  
  56. 4.  Now comes the hard part.  You must add a language definition to
  57.     the LANGUAGES variable.  If necessary, refer to the file
  58.     "config.X" for the complete syntax of this variable.  The default
  59.     value is:
  60.  
  61.     #define LANGUAGES "{american,MASTERDICTS=american.med+,HASHFILES=americanmed+.hash,EXTRADICT=/usr/dict/words}"
  62.  
  63.     which builds only the American dictionary.  You must extend this
  64.     so that it builds your favorite language(s) as well.
  65.  
  66.     WARNING WARNING WARNING:  The LANGUAGES variable *must* be written
  67.     as a single line.  You cannot use backslash-newline or any other
  68.     method to continue it.  It's going to look ugly in your local.h
  69.     file, but there's no way around it.
  70.  
  71.     In the simplest case, you can just add your language in curly
  72.     braces.  For example, if you are building a Swedish dictionary
  73.     from a word list named "svenska.sml" and an affix file named
  74.     "svenska.aff", just change LANGUAGES to read:
  75.  
  76.     #define LANGUAGES "{american,MASTERDICTS=american.med+,HASHFILES=americanmed+.hash,EXTRADICT=/usr/dict/words} {svenska}"
  77.  
  78.     In more complex cases, you might need to override certain Makefile
  79.     variables.  For example, if you also wanted to build a Norwegian
  80.     dictionary from a word list named "words.norwegian" and an affix
  81.     file named "norsk8.aff", you would extend the above definition as
  82.     follows:
  83.  
  84.     #define LANGUAGES "{american,MASTERDICTS=american.med+,HASHFILES=americanmed+.hash,EXTRADICT=/usr/dict/words} {svenska} {norsk,DICTIONARY=words.norwegian,AFFIXES=norsk8.aff}"
  85.  
  86.     Incidentally, from ispell's point of view, British and American
  87.     English are just two other languages.  If you want a British
  88.     dictionary as well as an American one, just add a "british" entry
  89.     to LANGUAGES that parallels the "american" one.
  90.  
  91.     Finally, if you wanted to build your own language without the
  92.     English dictionaries, you could omit the American part.  For
  93.     example, a Danish installation might choose:
  94.  
  95.     #define LANGUAGES "{dansk}"
  96.  
  97.     In this case, you will also want to add:
  98.  
  99.     #define MASTERHASH "dansk.hash"
  100.  
  101.     so that final installation will proceed correctly.
  102.  
  103. 5.  If your word list has already been "munched", you can skip this
  104.     step.  Otherwise, you should munch it before proceeding.  Start by
  105.     typing "make munchable" in the master ispell directory.  Then cd
  106.     into the directory for your language, and run munchlist with
  107.     stdout directed into a temporary file.  You *must* remember to set
  108.     TMPDIR to the name of a directory with lots of free space, or
  109.     munchlist will fail.  This step takes a long time, so take a lunch
  110.     break here.
  111.  
  112.     Some languages have their affix files distributed as "xxx.7bit"
  113.     rather than "xxx.aff".  You can either use the ".7bit" version
  114.     directly, or use "make xxx.aff" to create the corresponding ".aff"
  115.     file.
  116.  
  117.     For example, a German installation with the dictionary stored in
  118.     "deutsch.sml" would run munchlist as follows (assuming C-shell
  119.     syntax and assuming the /var/tmp has several tens of megabytes of
  120.     free space):
  121.  
  122.     % setenv TMPDIR /var/tmp
  123.     % make deutsch.aff
  124.     % munchlist -l deutsch.aff deutsch.sml > deutsch.munched
  125.  
  126.     Once you've successfully run munchlist, back up your original
  127.     dictionary (or throw it away, if you don't mind having to go back
  128.     to the Internet if something goes wrong) and rename the munched
  129.     version to your "master" name:
  130.  
  131.     % mv deutsch.sml deutsch.bak
  132.     % gzip -9 deutsch.bak
  133.     % mv deutsch.munched deutsch.sml
  134.  
  135. 6.  You are now all set up to build ispell with multiple languages.
  136.     Cd into the master ispell directory and type "make all".  After
  137.     the make completes, test ispell on a small file.  If everything
  138.     goes properly, type "make install" to install the dictionaries,
  139.     and you're done.
  140.